Skip to content

fix(build):Next.js 16 要求 Node.js >= 20.9.0#21

Merged
cosarah merged 1 commit intoTHU-MAIC:mainfrom
humingfeng:main
Mar 17, 2026
Merged

fix(build):Next.js 16 要求 Node.js >= 20.9.0#21
cosarah merged 1 commit intoTHU-MAIC:mainfrom
humingfeng:main

Conversation

@humingfeng
Copy link
Copy Markdown
Contributor

Changes

  • README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
  • package.json — 新增 engines: { node: ">=20.9.0" }
  • ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
  • .nvmrc — 新建,内容 22

* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22
@cosarah cosarah merged commit 0a9b5ab into THU-MAIC:main Mar 17, 2026
1 check passed
YizukiAme pushed a commit to YizukiAme/OpenMAIC that referenced this pull request Mar 18, 2026
* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22

Co-authored-by: humingfeng <humfsss@gmail.com>
cosarah added a commit that referenced this pull request Mar 19, 2026
* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes #19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* docs: revamp OpenClaw TIP section with playful copy and clearer install flow

Restructure the OpenClaw quickstart: install skill first, then pick mode.
Add meme-style nudge for OpenClaw to star the repo. Enlarge logo and
put "OpenClaw" in the TIP heading for visibility.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(build): use cross-platform file copy in mathml2omml (#20)

* fix(build): use cross-platform file copy in mathml2omml build script

Replace Unix `cp` with Node.js `fs.copyFileSync` so that `pnpm install`
works correctly on Windows where `cp` is not available.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: add .worktrees to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* fix(build):Next.js 16 要求 Node.js >= 20.9.0 (#21)

* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22

Co-authored-by: humingfeng <humfsss@gmail.com>

* Update Vercel configuration by removing bodyParser (#45)

Removed bodyParser configuration from Vercel functions.

* Fix SSRF/credential forwarding via client-supplied baseUrl (#30)

* Fix SSRF/credential forwarding via client-supplied baseUrl

* chore: format SSRF fix

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes #19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* fix: avoid synchronous setState in useEffect for hint visibility

---------

Co-authored-by: wyuc <wang-yc24@mails.tsinghua.edu.cn>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: 杨慎 <117187635+cosarah@users.noreply.github.com>
Co-authored-by: 1/2极客 <humf@vip.qq.com>
Co-authored-by: humingfeng <humfsss@gmail.com>
Co-authored-by: Rowtion <65099725+Rowtion@users.noreply.github.com>
Co-authored-by: Wing900 <167857578+Wing900@users.noreply.github.com>
zhenzhu143321 pushed a commit to zhenzhu143321/OpenMAIC that referenced this pull request Apr 4, 2026
* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes THU-MAIC#19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* docs: revamp OpenClaw TIP section with playful copy and clearer install flow

Restructure the OpenClaw quickstart: install skill first, then pick mode.
Add meme-style nudge for OpenClaw to star the repo. Enlarge logo and
put "OpenClaw" in the TIP heading for visibility.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(build): use cross-platform file copy in mathml2omml (THU-MAIC#20)

* fix(build): use cross-platform file copy in mathml2omml build script

Replace Unix `cp` with Node.js `fs.copyFileSync` so that `pnpm install`
works correctly on Windows where `cp` is not available.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: add .worktrees to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* fix(build):Next.js 16 要求 Node.js >= 20.9.0 (THU-MAIC#21)

* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22

Co-authored-by: humingfeng <humfsss@gmail.com>

* Update Vercel configuration by removing bodyParser (THU-MAIC#45)

Removed bodyParser configuration from Vercel functions.

* Fix SSRF/credential forwarding via client-supplied baseUrl (THU-MAIC#30)

* Fix SSRF/credential forwarding via client-supplied baseUrl

* chore: format SSRF fix

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes THU-MAIC#19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* fix: avoid synchronous setState in useEffect for hint visibility

---------

Co-authored-by: wyuc <wang-yc24@mails.tsinghua.edu.cn>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: 杨慎 <117187635+cosarah@users.noreply.github.com>
Co-authored-by: 1/2极客 <humf@vip.qq.com>
Co-authored-by: humingfeng <humfsss@gmail.com>
Co-authored-by: Rowtion <65099725+Rowtion@users.noreply.github.com>
Co-authored-by: Wing900 <167857578+Wing900@users.noreply.github.com>
jaumemir pushed a commit to jaumemir/OpenMAIC that referenced this pull request Apr 8, 2026
* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22

Co-authored-by: humingfeng <humfsss@gmail.com>
jaumemir pushed a commit to jaumemir/OpenMAIC that referenced this pull request Apr 8, 2026
* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes THU-MAIC#19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* docs: revamp OpenClaw TIP section with playful copy and clearer install flow

Restructure the OpenClaw quickstart: install skill first, then pick mode.
Add meme-style nudge for OpenClaw to star the repo. Enlarge logo and
put "OpenClaw" in the TIP heading for visibility.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(build): use cross-platform file copy in mathml2omml (THU-MAIC#20)

* fix(build): use cross-platform file copy in mathml2omml build script

Replace Unix `cp` with Node.js `fs.copyFileSync` so that `pnpm install`
works correctly on Windows where `cp` is not available.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: add .worktrees to .gitignore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>

* fix(build):Next.js 16 要求 Node.js >= 20.9.0 (THU-MAIC#21)

* fix(build):
1、README.md / README-zh.md — Node.js 版本要求 >= 18 → >= 20
2、package.json — 新增 engines: { node: ">=20.9.0" }
3、ci.yml — node-version: 20 → 22(与 Dockerfile 一致)
4、.nvmrc — 新建,内容 22

Co-authored-by: humingfeng <humfsss@gmail.com>

* Update Vercel configuration by removing bodyParser (THU-MAIC#45)

Removed bodyParser configuration from Vercel functions.

* Fix SSRF/credential forwarding via client-supplied baseUrl (THU-MAIC#30)

* Fix SSRF/credential forwarding via client-supplied baseUrl

* chore: format SSRF fix

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* feat: add pan, zoom, and auto-fit to whiteboard canvas

When AI generates whiteboard elements that exceed the fixed 1000x562.5
canvas, content was clipped by overflow-hidden with no way to view it.

This commit adds interactive navigation to the whiteboard:

- Auto-fit: when elements overflow, content is scaled and centered to
  ensure nothing is clipped (with 24px padding)
- Drag-to-pan: hold and drag to pan around the whiteboard
- Scroll-to-zoom: mouse wheel zooms in/out (0.2x to 5x range)
- Double-click or Reset View button to return to default view
- View auto-resets when new whiteboard content loads

When content fits within the canvas, behavior is unchanged - no extra
cursor, no transforms, no visual regression.

Fixes THU-MAIC#19

* fix: correct pan tracking math and reset button event propagation

* fix: guard against zero containerScale and fix zoom docstring

* fix: cleanup reviewer feedback and disable pan/zoom on empty whiteboard

- Remove dead code: ?? 'Reset View' fallback (i18n key exists)
- Add useMemo for elementsKey (perf optimization)
- Fix el.height type narrowing (remove implicit any)
- Disable pan/zoom/cursor when whiteboard is empty (UX improvement)

* fix: tighten whiteboard pan and auto-fit bounds

* refactor: reset whiteboard viewport via keyed remount

* fix: preserve viewport while whiteboard content streams

* feat: add scroll-to-zoom interaction hint on whiteboard

* fix: avoid synchronous setState in useEffect for hint visibility

---------

Co-authored-by: wyuc <wang-yc24@mails.tsinghua.edu.cn>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: 杨慎 <117187635+cosarah@users.noreply.github.com>
Co-authored-by: 1/2极客 <humf@vip.qq.com>
Co-authored-by: humingfeng <humfsss@gmail.com>
Co-authored-by: Rowtion <65099725+Rowtion@users.noreply.github.com>
Co-authored-by: Wing900 <167857578+Wing900@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants